[INFO] fetching crate mustache 0.9.0...
[INFO] fixing mustache-0.9.0 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate mustache 0.9.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate mustache 0.9.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate mustache 0.9.0
[INFO] tweaked toml for crates.io crate mustache 0.9.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate mustache 0.9.0 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 24 packages to latest compatible versions
[INFO] [stderr]       Adding log v0.3.9 (available: v0.4.33)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: An explicit [[test]] section is specified in Cargo.toml which currently
[INFO] [stderr] disables Cargo from automatically inferring other test targets.
[INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following
[INFO] [stderr] files will be included as a test target:
[INFO] [stderr] 
[INFO] [stderr] * tests/template.rs
[INFO] [stderr] * tests/macros.rs
[INFO] [stderr] * tests/builder.rs
[INFO] [stderr] 
[INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be
[INFO] [stderr] ready to be compiled as a test target today. You can future-proof yourself
[INFO] [stderr] and disable this warning by adding `autotests = false` to your [package]
[INFO] [stderr] section. You may also move the files to a location where Cargo would not
[INFO] [stderr] automatically infer them to be a target, such as in subfolders.
[INFO] [stderr] 
[INFO] [stderr] For more information on this warning you can consult
[INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `mustache` (manifest) generated 2 warnings
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 12b3940be8f15fe9165b5ec43bc72295e1c8e024b78f5abba5f928ed33109cf5
[INFO] running `Command { std: "docker" "start" "12b3940be8f15fe9165b5ec43bc72295e1c8e024b78f5abba5f928ed33109cf5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "12b3940be8f15fe9165b5ec43bc72295e1c8e024b78f5abba5f928ed33109cf5" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "12b3940be8f15fe9165b5ec43bc72295e1c8e024b78f5abba5f928ed33109cf5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "12b3940be8f15fe9165b5ec43bc72295e1c8e024b78f5abba5f928ed33109cf5" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2015 edition to 2018
[INFO] [stderr] warning: Cargo.toml: An explicit [[test]] section is specified in Cargo.toml which currently
[INFO] [stderr] disables Cargo from automatically inferring other test targets.
[INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following
[INFO] [stderr] files will be included as a test target:
[INFO] [stderr] 
[INFO] [stderr] * tests/template.rs
[INFO] [stderr] * tests/macros.rs
[INFO] [stderr] * tests/builder.rs
[INFO] [stderr] 
[INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be
[INFO] [stderr] ready to be compiled as a test target today. You can future-proof yourself
[INFO] [stderr] and disable this warning by adding `autotests = false` to your [package]
[INFO] [stderr] section. You may also move the files to a location where Cargo would not
[INFO] [stderr] automatically infer them to be a target, such as in subfolders.
[INFO] [stderr] 
[INFO] [stderr] For more information on this warning you can consult
[INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `mustache` (manifest) generated 2 warnings
[INFO] [stderr]     Checking remove_dir_all v0.5.3
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking mustache v0.9.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2015 edition to 2018
[INFO] [stderr]     Checking tempdir v0.3.7
[INFO] [stderr]        Fixed src/context.rs (6 fixes)
[INFO] [stderr]        Fixed src/parser.rs (13 fixes)
[INFO] [stderr]        Fixed src/template.rs (28 fixes)
[INFO] [stderr]        Fixed src/lib.rs (9 fixes)
[INFO] [stderr]        Fixed src/builder.rs (1 fix)
[INFO] [stderr]        Fixed src/encoder.rs (2 fixes)
[INFO] [stderr]        Fixed src/error.rs (2 fixes)
[INFO] [stderr]        Fixed src/compiler.rs (5 fixes)
[INFO] [stderr]    Migrating tests/test.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed tests/template.rs (1 fix)
[INFO] [stderr]    Migrating examples/vector_iteration.rs from 2015 edition to 2018
[INFO] [stderr]        Fixed src/compiler.rs (3 fixes)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.14s
[INFO] [stderr] crater-edition-check: mustache v0.9.0 (/opt/rustwide/workdir) updating edition from 2015 to 2018
[INFO] [stderr]     Checking mustache v0.9.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |             r#try!(parser.parse())
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler.rs:69:25
[INFO] [stdout]    |
[INFO] [stdout] 69 |                         r#try!(file.read_to_string(&mut string));
[INFO] [stdout]    |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler.rs:79:53
[INFO] [stdout]    |
[INFO] [stdout] 79 |                         let (tokens, subpartials) = r#try!(compiler.compile());
[INFO] [stdout]    |                                                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/context.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let (tokens, partials) = r#try!(compiler.compile());
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/context.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         r#try!(file.read_to_end(&mut s));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/context.rs:52:24
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let mut file = r#try!(File::open(&path));
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:331:23
[INFO] [stdout]     |
[INFO] [stdout] 331 |         self.vec.push(r#try!(to_data(&value)));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |             r#try!(parser.parse())
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler.rs:69:25
[INFO] [stdout]    |
[INFO] [stdout] 69 |                         r#try!(file.read_to_string(&mut string));
[INFO] [stdout]    |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/compiler.rs:79:53
[INFO] [stdout]    |
[INFO] [stdout] 79 |                         let (tokens, subpartials) = r#try!(compiler.compile());
[INFO] [stdout]    |                                                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/context.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let (tokens, partials) = r#try!(compiler.compile());
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/context.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         r#try!(file.read_to_end(&mut s));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/context.rs:52:24
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let mut file = r#try!(File::open(&path));
[INFO] [stdout]    |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:331:23
[INFO] [stdout]     |
[INFO] [stdout] 331 |         self.vec.push(r#try!(to_data(&value)));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:369:30
[INFO] [stdout]     |
[INFO] [stdout] 369 |         self.map.insert(key, r#try!(to_data(&value)));
[INFO] [stdout]     |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:216:29
[INFO] [stdout]     |
[INFO] [stdout] 216 | ...                   r#try!(self.add_tag());
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:227:29
[INFO] [stdout]     |
[INFO] [stdout] 227 | ...                   r#try!(self.add_tag());
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:365:9
[INFO] [stdout]     |
[INFO] [stdout] 365 |         r#try!(deny_blank(&content));
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:375:28
[INFO] [stdout]     |
[INFO] [stdout] 375 |                 let name = r#try!(get_name_or_implicit(name));
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:381:32
[INFO] [stdout]     |
[INFO] [stdout] 381 |                     let name = r#try!(get_name_or_implicit(name));
[INFO] [stdout]     |                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:390:28
[INFO] [stdout]     |
[INFO] [stdout] 390 |                 let name = r#try!(get_name_or_implicit(&content[1..len]));
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:396:28
[INFO] [stdout]     |
[INFO] [stdout] 396 |                 let name = r#try!(get_name_or_implicit(&content[1..len]));
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:402:28
[INFO] [stdout]     |
[INFO] [stdout] 402 |                 let name = r#try!(get_name_or_implicit(&content[1..len]));
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:462:17
[INFO] [stdout]     |
[INFO] [stdout] 462 |                 r#try!(self.add_partial(&content, tag));
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:468:29
[INFO] [stdout]     |
[INFO] [stdout] 468 |                     let s = r#try!(deny_blank(&content[1..len - 1]));
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:495:28
[INFO] [stdout]     |
[INFO] [stdout] 495 |                 let name = r#try!(get_name_or_implicit(&content));
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:533:20
[INFO] [stdout]     |
[INFO] [stdout] 533 |         let name = r#try!(deny_blank(name));
[INFO] [stdout]     |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:563:16
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let name = r#try!(deny_blank(&name));
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/template.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         r#try!(self.render(&mut output, data));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/template.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         r#try!(self.render_data(&mut output, data));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/template.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |             r#try!(self.render_token(wr, stack, token));
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:114:9
[INFO] [stdout]     |
[INFO] [stdout] 114 |         r#try!(wr.write_all(value.as_bytes()));
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:126:13
[INFO] [stdout]     |
[INFO] [stdout] 126 |             r#try!(wr.write_all(self.indent.as_bytes()));
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:159:17
[INFO] [stdout]     |
[INFO] [stdout] 159 |                 r#try!(self.write_tracking_newlines(wr, line));
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:156:21
[INFO] [stdout]     |
[INFO] [stdout] 156 |                     r#try!(self.write_indent(wr));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/encoder.rs:369:30
[INFO] [stdout]     |
[INFO] [stdout] 369 |         self.map.insert(key, r#try!(to_data(&value)));
[INFO] [stdout]     |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |         r#try!(self.render_utag(&mut bytes, stack, path));
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:216:29
[INFO] [stdout]     |
[INFO] [stdout] 216 | ...                   r#try!(self.add_tag());
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:227:29
[INFO] [stdout]     |
[INFO] [stdout] 227 | ...                   r#try!(self.add_tag());
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:365:9
[INFO] [stdout]     |
[INFO] [stdout] 365 |         r#try!(deny_blank(&content));
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:174:21
[INFO] [stdout]     |
[INFO] [stdout] 174 |                     r#try!(wr.write_all(b"&lt;"));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:375:28
[INFO] [stdout]     |
[INFO] [stdout] 375 |                 let name = r#try!(get_name_or_implicit(name));
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:381:32
[INFO] [stdout]     |
[INFO] [stdout] 381 |                     let name = r#try!(get_name_or_implicit(name));
[INFO] [stdout]     |                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 |                     r#try!(wr.write_all(b"&gt;"));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:390:28
[INFO] [stdout]     |
[INFO] [stdout] 390 |                 let name = r#try!(get_name_or_implicit(&content[1..len]));
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:396:28
[INFO] [stdout]     |
[INFO] [stdout] 396 |                 let name = r#try!(get_name_or_implicit(&content[1..len]));
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:402:28
[INFO] [stdout]     |
[INFO] [stdout] 402 |                 let name = r#try!(get_name_or_implicit(&content[1..len]));
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:180:21
[INFO] [stdout]     |
[INFO] [stdout] 180 |                     r#try!(wr.write_all(b"&amp;"));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:462:17
[INFO] [stdout]     |
[INFO] [stdout] 462 |                 r#try!(self.add_partial(&content, tag));
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:468:29
[INFO] [stdout]     |
[INFO] [stdout] 468 |                     let s = r#try!(deny_blank(&content[1..len - 1]));
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:495:28
[INFO] [stdout]     |
[INFO] [stdout] 495 |                 let name = r#try!(get_name_or_implicit(&content));
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:183:21
[INFO] [stdout]     |
[INFO] [stdout] 183 |                     r#try!(wr.write_all(b"&quot;"));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:533:20
[INFO] [stdout]     |
[INFO] [stdout] 533 |         let name = r#try!(deny_blank(name));
[INFO] [stdout]     |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/parser.rs:563:16
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let name = r#try!(deny_blank(&name));
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/template.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         r#try!(self.render(&mut output, data));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:186:21
[INFO] [stdout]     |
[INFO] [stdout] 186 |                     r#try!(wr.write_all(b"&#39;"));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/template.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         r#try!(self.render_data(&mut output, data));
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> src/template.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |             r#try!(self.render_token(wr, stack, token));
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:114:9
[INFO] [stdout]     |
[INFO] [stdout] 114 |         r#try!(wr.write_all(value.as_bytes()));
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:189:21
[INFO] [stdout]     |
[INFO] [stdout] 189 |                     r#try!(wr.write_all(&[b]));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:126:13
[INFO] [stdout]     |
[INFO] [stdout] 126 |             r#try!(wr.write_all(self.indent.as_bytes()));
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 r#try!(self.write_indent(wr));
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:213:25
[INFO] [stdout]     |
[INFO] [stdout] 213 |                         r#try!(self.write_tracking_newlines(wr, value));
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:220:25
[INFO] [stdout]     |
[INFO] [stdout] 220 |                         r#try!(self.render(wr, stack, &tokens));
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:219:38
[INFO] [stdout]     |
[INFO] [stdout] 219 |                         let tokens = r#try!(self.render_fun("", "{{", "}}", f));
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:267:25
[INFO] [stdout]     |
[INFO] [stdout] 267 |                         r#try!(self.render(wr, stack, children));
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:273:29
[INFO] [stdout]     |
[INFO] [stdout] 273 | ...                   r#try!(self.render(wr, stack, children));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:280:29
[INFO] [stdout]     |
[INFO] [stdout] 280 | ...                   r#try!(self.render(wr, stack, children));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:286:25
[INFO] [stdout]     |
[INFO] [stdout] 286 |                         r#try!(self.render(wr, stack, children));
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:159:17
[INFO] [stdout]     |
[INFO] [stdout] 159 |                 r#try!(self.write_tracking_newlines(wr, line));
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:292:25
[INFO] [stdout]     |
[INFO] [stdout] 292 |                         r#try!(self.render(wr, stack, &tokens));
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:291:38
[INFO] [stdout]     |
[INFO] [stdout] 291 |                         let tokens = r#try!(self.render_fun(src, otag, ctag, f));
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:312:17
[INFO] [stdout]     |
[INFO] [stdout] 312 |                 r#try!(self.render(wr, stack, &tokens));
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:156:21
[INFO] [stdout]     |
[INFO] [stdout] 156 |                     r#try!(self.write_indent(wr));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:334:27
[INFO] [stdout]     |
[INFO] [stdout] 334 |         let (tokens, _) = r#try!(compiler.compile());
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |         r#try!(self.render_utag(&mut bytes, stack, path));
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:174:21
[INFO] [stdout]     |
[INFO] [stdout] 174 |                     r#try!(wr.write_all(b"&lt;"));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 |                     r#try!(wr.write_all(b"&gt;"));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:180:21
[INFO] [stdout]     |
[INFO] [stdout] 180 |                     r#try!(wr.write_all(b"&amp;"));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:183:21
[INFO] [stdout]     |
[INFO] [stdout] 183 |                     r#try!(wr.write_all(b"&quot;"));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:186:21
[INFO] [stdout]     |
[INFO] [stdout] 186 |                     r#try!(wr.write_all(b"&#39;"));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:189:21
[INFO] [stdout]     |
[INFO] [stdout] 189 |                     r#try!(wr.write_all(&[b]));
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 r#try!(self.write_indent(wr));
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:213:25
[INFO] [stdout]     |
[INFO] [stdout] 213 |                         r#try!(self.write_tracking_newlines(wr, value));
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:220:25
[INFO] [stdout]     |
[INFO] [stdout] 220 |                         r#try!(self.render(wr, stack, &tokens));
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:219:38
[INFO] [stdout]     |
[INFO] [stdout] 219 |                         let tokens = r#try!(self.render_fun("", "{{", "}}", f));
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:267:25
[INFO] [stdout]     |
[INFO] [stdout] 267 |                         r#try!(self.render(wr, stack, children));
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:273:29
[INFO] [stdout]     |
[INFO] [stdout] 273 | ...                   r#try!(self.render(wr, stack, children));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:280:29
[INFO] [stdout]     |
[INFO] [stdout] 280 | ...                   r#try!(self.render(wr, stack, children));
[INFO] [stdout]     |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:286:25
[INFO] [stdout]     |
[INFO] [stdout] 286 |                         r#try!(self.render(wr, stack, children));
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:292:25
[INFO] [stdout]     |
[INFO] [stdout] 292 |                         r#try!(self.render(wr, stack, &tokens));
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:291:38
[INFO] [stdout]     |
[INFO] [stdout] 291 |                         let tokens = r#try!(self.render_fun(src, otag, ctag, f));
[INFO] [stdout]     |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:312:17
[INFO] [stdout]     |
[INFO] [stdout] 312 |                 r#try!(self.render(wr, stack, &tokens));
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/data.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Fun(RefCell<Box<FnMut(String) -> String + Send>>),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Fun(RefCell<Box<dyn FnMut(String) -> String + Send>>),
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/template.rs:334:27
[INFO] [stdout]     |
[INFO] [stdout] 334 |         let (tokens, _) = r#try!(compiler.compile());
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/template.rs:324:31
[INFO] [stdout]     |
[INFO] [stdout] 324 |                   f: &mut Box<FnMut(String) -> String + Send + 'static>)
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 324 |                   f: &mut Box<dyn FnMut(String) -> String + Send + 'static>)
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/data.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Fun(RefCell<Box<FnMut(String) -> String + Send>>),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Fun(RefCell<Box<dyn FnMut(String) -> String + Send>>),
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/template.rs:324:31
[INFO] [stdout]     |
[INFO] [stdout] 324 |                   f: &mut Box<FnMut(String) -> String + Send + 'static>)
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 324 |                   f: &mut Box<dyn FnMut(String) -> String + Send + 'static>)
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/encoder.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 39 |         self.description().fmt(f)
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/encoder.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 39 |         self.description().fmt(f)
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:29:14
[INFO] [stdout]    |
[INFO] [stdout] 29 |         self.description().fmt(f)
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:38:39
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Error::Io(ref err) => err.description(),
[INFO] [stdout]    |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:39:43
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Error::Parser(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:40:44
[INFO] [stdout]    |
[INFO] [stdout] 40 |             Error::Encoder(ref err) => err.description(),
[INFO] [stdout]    |                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:29:14
[INFO] [stdout]    |
[INFO] [stdout] 29 |         self.description().fmt(f)
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:38:39
[INFO] [stdout]    |
[INFO] [stdout] 38 |             Error::Io(ref err) => err.description(),
[INFO] [stdout]    |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:39:43
[INFO] [stdout]    |
[INFO] [stdout] 39 |             Error::Parser(ref err) => err.description(),
[INFO] [stdout]    |                                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/error.rs:40:44
[INFO] [stdout]    |
[INFO] [stdout] 40 |             Error::Encoder(ref err) => err.description(),
[INFO] [stdout]    |                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/parser.rs:67:39
[INFO] [stdout]    |
[INFO] [stdout] 67 |             _ => write!(f, "{}", self.description()),
[INFO] [stdout]    |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/parser.rs:67:39
[INFO] [stdout]    |
[INFO] [stdout] 67 |             _ => write!(f, "{}", self.description()),
[INFO] [stdout]    |                                       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `assert_let`
[INFO] [stdout]  --> tests/macros.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | macro_rules! assert_let {
[INFO] [stdout]   |              ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `assert_let` in this scope
[INFO] [stdout]   --> tests/builder.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     assert_let!(Data::Vec(vs) = data => {
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs:42:0
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named macro `assert_eq` defined here
[INFO] [stdout] help: a macro with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 80 -     assert_let!(Data::Vec(vs) = data => {
[INFO] [stdout] 80 +     assert_eq!(Data::Vec(vs) = data => {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `assert_let` in this scope
[INFO] [stdout]   --> tests/builder.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     assert_let!(Data::Map(m) = data => {
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs:42:0
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named macro `assert_eq` defined here
[INFO] [stdout] help: a macro with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 57 -     assert_let!(Data::Map(m) = data => {
[INFO] [stdout] 57 +     assert_eq!(Data::Map(m) = data => {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> tests/template.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     r#try!(template.render(&mut bytes, data));
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mustache` (test "builder") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> tests/template.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, Serialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> tests/template.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use serde::Serialize;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider importing this derive macro
[INFO] [stdout]    |
[INFO] [stdout]  1 + use serde_derive::Serialize;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> tests/template.rs:22:17
[INFO] [stdout]    |
[INFO] [stdout] 22 | #[derive(Debug, Serialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> tests/template.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use serde::Serialize;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider importing this derive macro
[INFO] [stdout]    |
[INFO] [stdout]  1 + use serde_derive::Serialize;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]   --> tests/template.rs:29:17
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Debug, Serialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]   --> tests/template.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use serde::Serialize;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider importing this derive macro
[INFO] [stdout]    |
[INFO] [stdout]  1 + use serde_derive::Serialize;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]    --> tests/template.rs:254:21
[INFO] [stdout]     |
[INFO] [stdout] 254 |     #[derive(Debug, Serialize)]
[INFO] [stdout]     |                     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: `Serialize` is imported here, but it is only a trait, without a derive macro
[INFO] [stdout]    --> tests/template.rs:12:5
[INFO] [stdout]     |
[INFO] [stdout]  12 | use serde::Serialize;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider importing this derive macro
[INFO] [stdout]     |
[INFO] [stdout]   1 + use serde_derive::Serialize;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> tests/template.rs:321:22
[INFO] [stdout]     |
[INFO] [stdout] 321 |         assert_eq!(e.description(), "failed to write whole buffer")
[INFO] [stdout]     |                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `assert_let` in this scope
[INFO] [stdout]    --> tests/template.rs:320:5
[INFO] [stdout]     |
[INFO] [stdout] 320 |     assert_let!(Err(e) = template.render(&mut writer, &ctx) => {
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs:42:0
[INFO] [stdout]     |
[INFO] [stdout]     = note: similarly named macro `assert_eq` defined here
[INFO] [stdout] help: a macro with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 320 -     assert_let!(Err(e) = template.render(&mut writer, &ctx) => {
[INFO] [stdout] 320 +     assert_eq!(Err(e) = template.render(&mut writer, &ctx) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `assert_let` in this scope
[INFO] [stdout]    --> tests/template.rs:465:5
[INFO] [stdout]     |
[INFO] [stdout] 465 |     assert_let!(Json::Object(mut d) = json => {
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs:42:0
[INFO] [stdout]     |
[INFO] [stdout]     = note: similarly named macro `assert_eq` defined here
[INFO] [stdout] help: a macro with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 465 -     assert_let!(Json::Object(mut d) = json => {
[INFO] [stdout] 465 +     assert_eq!(Json::Object(mut d) = json => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `assert_let` in this scope
[INFO] [stdout]    --> tests/template.rs:473:5
[INFO] [stdout]     |
[INFO] [stdout] 473 |     assert_let!(Json::Object(ref d) = *value => {
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs:42:0
[INFO] [stdout]     |
[INFO] [stdout]     = note: similarly named macro `assert_eq` defined here
[INFO] [stdout] help: a macro with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 473 -     assert_let!(Json::Object(ref d) = *value => {
[INFO] [stdout] 473 +     assert_eq!(Json::Object(ref d) = *value => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `assert_let` in this scope
[INFO] [stdout]    --> tests/template.rs:486:20
[INFO] [stdout]     |
[INFO] [stdout] 486 |     let template = assert_let!(Some(&Json::String(ref s)) = test.get("template") => {
[INFO] [stdout]     |                    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs:42:0
[INFO] [stdout]     |
[INFO] [stdout]     = note: similarly named macro `assert_eq` defined here
[INFO] [stdout] help: a macro with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 486 -     let template = assert_let!(Some(&Json::String(ref s)) = test.get("template") => {
[INFO] [stdout] 486 +     let template = assert_eq!(Some(&Json::String(ref s)) = test.get("template") => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `assert_let` in this scope
[INFO] [stdout]    --> tests/template.rs:490:20
[INFO] [stdout]     |
[INFO] [stdout] 490 |     let expected = assert_let!(Some(&Json::String(ref s)) = test.get("expected") => {
[INFO] [stdout]     |                    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs:42:0
[INFO] [stdout]     |
[INFO] [stdout]     = note: similarly named macro `assert_eq` defined here
[INFO] [stdout] help: a macro with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 490 -     let expected = assert_let!(Some(&Json::String(ref s)) = test.get("expected") => {
[INFO] [stdout] 490 +     let expected = assert_eq!(Some(&Json::String(ref s)) = test.get("expected") => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `assert_let` in this scope
[INFO] [stdout]    --> tests/template.rs:521:20
[INFO] [stdout]     |
[INFO] [stdout] 521 |         let test = assert_let!(Json::Object(m) = json => m);
[INFO] [stdout]     |                    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs:42:0
[INFO] [stdout]     |
[INFO] [stdout]     = note: similarly named macro `assert_eq` defined here
[INFO] [stdout] help: a macro with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 521 -         let test = assert_let!(Json::Object(m) = json => m);
[INFO] [stdout] 521 +         let test = assert_eq!(Json::Object(m) = json => m);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `assert_let` in this scope
[INFO] [stdout]    --> tests/template.rs:563:24
[INFO] [stdout]     |
[INFO] [stdout] 563 |         let mut test = assert_let!(Json::Object(m) = json => m);
[INFO] [stdout]     |                        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs:42:0
[INFO] [stdout]     |
[INFO] [stdout]     = note: similarly named macro `assert_eq` defined here
[INFO] [stdout] help: a macro with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 563 -         let mut test = assert_let!(Json::Object(m) = json => m);
[INFO] [stdout] 563 +         let mut test = assert_eq!(Json::Object(m) = json => m);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `assert_let` in this scope
[INFO] [stdout]    --> tests/template.rs:565:17
[INFO] [stdout]     |
[INFO] [stdout] 565 |         let s = assert_let!(Some(Json::String(s)) = test.remove("name") => s);
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs:42:0
[INFO] [stdout]     |
[INFO] [stdout]     = note: similarly named macro `assert_eq` defined here
[INFO] [stdout] help: a macro with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 565 -         let s = assert_let!(Some(Json::String(s)) = test.remove("name") => s);
[INFO] [stdout] 565 +         let s = assert_eq!(Some(Json::String(s)) = test.remove("name") => s);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find macro `assert_let` in this scope
[INFO] [stdout]    --> tests/template.rs:572:23
[INFO] [stdout]     |
[INFO] [stdout] 572 |         let mut ctx = assert_let!(Data::Map(ctx) = data => ctx);
[INFO] [stdout]     |                       ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/macros/mod.rs:42:0
[INFO] [stdout]     |
[INFO] [stdout]     = note: similarly named macro `assert_eq` defined here
[INFO] [stdout] help: a macro with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 572 -         let mut ctx = assert_let!(Data::Map(ctx) = data => ctx);
[INFO] [stdout] 572 +         let mut ctx = assert_eq!(Data::Map(ctx) = data => ctx);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> tests/template.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::Write;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]   --> tests/template.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     r#try!(template.render(&mut bytes, data));
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]    --> tests/template.rs:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |     use std::error::Error;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Planet: serde::Serialize` is not satisfied
[INFO] [stdout]   --> tests/template.rs:67:45
[INFO] [stdout]    |
[INFO] [stdout] 67 |     assert_eq!(assert_render("hello world", &ctx), "hello world");
[INFO] [stdout]    |                -------------                ^^^^ unsatisfied trait bound
[INFO] [stdout]    |                |
[INFO] [stdout]    |                required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Planet`
[INFO] [stdout]   --> tests/template.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Planet {
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Planet` type
[INFO] [stdout]    = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]    = help: the following other types implement trait `Serialize`:
[INFO] [stdout]              &'a T
[INFO] [stdout]              &'a mut T
[INFO] [stdout]              ()
[INFO] [stdout]              (T,)
[INFO] [stdout]              (T0, T1)
[INFO] [stdout]              (T0, T1, T2)
[INFO] [stdout]              (T0, T1, T2, T3)
[INFO] [stdout]              (T0, T1, T2, T3, T4)
[INFO] [stdout]            and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]   --> tests/template.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]    |    ------------- required by a bound in this function
[INFO] [stdout] 40 | where T: Serialize + Debug
[INFO] [stdout]    |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Planet: serde::Serialize` is not satisfied
[INFO] [stdout]   --> tests/template.rs:68:46
[INFO] [stdout]    |
[INFO] [stdout] 68 |     assert_eq!(assert_render("hello {world", &ctx), "hello {world");
[INFO] [stdout]    |                -------------                 ^^^^ unsatisfied trait bound
[INFO] [stdout]    |                |
[INFO] [stdout]    |                required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Planet`
[INFO] [stdout]   --> tests/template.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Planet {
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Planet` type
[INFO] [stdout]    = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]    = help: the following other types implement trait `Serialize`:
[INFO] [stdout]              &'a T
[INFO] [stdout]              &'a mut T
[INFO] [stdout]              ()
[INFO] [stdout]              (T,)
[INFO] [stdout]              (T0, T1)
[INFO] [stdout]              (T0, T1, T2)
[INFO] [stdout]              (T0, T1, T2, T3)
[INFO] [stdout]              (T0, T1, T2, T3, T4)
[INFO] [stdout]            and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]   --> tests/template.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]    |    ------------- required by a bound in this function
[INFO] [stdout] 40 | where T: Serialize + Debug
[INFO] [stdout]    |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Planet: serde::Serialize` is not satisfied
[INFO] [stdout]   --> tests/template.rs:69:46
[INFO] [stdout]    |
[INFO] [stdout] 69 |     assert_eq!(assert_render("hello world}", &ctx), "hello world}");
[INFO] [stdout]    |                -------------                 ^^^^ unsatisfied trait bound
[INFO] [stdout]    |                |
[INFO] [stdout]    |                required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Planet`
[INFO] [stdout]   --> tests/template.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Planet {
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Planet` type
[INFO] [stdout]    = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]    = help: the following other types implement trait `Serialize`:
[INFO] [stdout]              &'a T
[INFO] [stdout]              &'a mut T
[INFO] [stdout]              ()
[INFO] [stdout]              (T,)
[INFO] [stdout]              (T0, T1)
[INFO] [stdout]              (T0, T1, T2)
[INFO] [stdout]              (T0, T1, T2, T3)
[INFO] [stdout]              (T0, T1, T2, T3, T4)
[INFO] [stdout]            and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]   --> tests/template.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]    |    ------------- required by a bound in this function
[INFO] [stdout] 40 | where T: Serialize + Debug
[INFO] [stdout]    |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Planet: serde::Serialize` is not satisfied
[INFO] [stdout]   --> tests/template.rs:70:47
[INFO] [stdout]    |
[INFO] [stdout] 70 |     assert_eq!(assert_render("hello {world}", &ctx), "hello {world}");
[INFO] [stdout]    |                -------------                  ^^^^ unsatisfied trait bound
[INFO] [stdout]    |                |
[INFO] [stdout]    |                required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Planet`
[INFO] [stdout]   --> tests/template.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Planet {
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Planet` type
[INFO] [stdout]    = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]    = help: the following other types implement trait `Serialize`:
[INFO] [stdout]              &'a T
[INFO] [stdout]              &'a mut T
[INFO] [stdout]              ()
[INFO] [stdout]              (T,)
[INFO] [stdout]              (T0, T1)
[INFO] [stdout]              (T0, T1, T2)
[INFO] [stdout]              (T0, T1, T2, T3)
[INFO] [stdout]              (T0, T1, T2, T3, T4)
[INFO] [stdout]            and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]   --> tests/template.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]    |    ------------- required by a bound in this function
[INFO] [stdout] 40 | where T: Serialize + Debug
[INFO] [stdout]    |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Planet: serde::Serialize` is not satisfied
[INFO] [stdout]   --> tests/template.rs:71:47
[INFO] [stdout]    |
[INFO] [stdout] 71 |     assert_eq!(assert_render("hello world}}", &ctx), "hello world}}");
[INFO] [stdout]    |                -------------                  ^^^^ unsatisfied trait bound
[INFO] [stdout]    |                |
[INFO] [stdout]    |                required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Planet`
[INFO] [stdout]   --> tests/template.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Planet {
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Planet` type
[INFO] [stdout]    = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]    = help: the following other types implement trait `Serialize`:
[INFO] [stdout]              &'a T
[INFO] [stdout]              &'a mut T
[INFO] [stdout]              ()
[INFO] [stdout]              (T,)
[INFO] [stdout]              (T0, T1)
[INFO] [stdout]              (T0, T1, T2)
[INFO] [stdout]              (T0, T1, T2, T3)
[INFO] [stdout]              (T0, T1, T2, T3, T4)
[INFO] [stdout]            and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]   --> tests/template.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]    |    ------------- required by a bound in this function
[INFO] [stdout] 40 | where T: Serialize + Debug
[INFO] [stdout]    |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Planet: serde::Serialize` is not satisfied
[INFO] [stdout]   --> tests/template.rs:81:48
[INFO] [stdout]    |
[INFO] [stdout] 81 |     assert_eq!(assert_render("hello {{name}}", &ctx), "hello world");
[INFO] [stdout]    |                -------------                   ^^^^ unsatisfied trait bound
[INFO] [stdout]    |                |
[INFO] [stdout]    |                required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Planet`
[INFO] [stdout]   --> tests/template.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Planet {
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Planet` type
[INFO] [stdout]    = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]    = help: the following other types implement trait `Serialize`:
[INFO] [stdout]              &'a T
[INFO] [stdout]              &'a mut T
[INFO] [stdout]              ()
[INFO] [stdout]              (T,)
[INFO] [stdout]              (T0, T1)
[INFO] [stdout]              (T0, T1, T2)
[INFO] [stdout]              (T0, T1, T2, T3)
[INFO] [stdout]              (T0, T1, T2, T3, T4)
[INFO] [stdout]            and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]   --> tests/template.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]    |    ------------- required by a bound in this function
[INFO] [stdout] 40 | where T: Serialize + Debug
[INFO] [stdout]    |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Planet: serde::Serialize` is not satisfied
[INFO] [stdout]   --> tests/template.rs:91:50
[INFO] [stdout]    |
[INFO] [stdout] 91 |     assert_eq!(assert_render("hello {{{name}}}", &ctx), "hello world");
[INFO] [stdout]    |                -------------                     ^^^^ unsatisfied trait bound
[INFO] [stdout]    |                |
[INFO] [stdout]    |                required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Planet`
[INFO] [stdout]   --> tests/template.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Planet {
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Planet` type
[INFO] [stdout]    = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]    = help: the following other types implement trait `Serialize`:
[INFO] [stdout]              &'a T
[INFO] [stdout]              &'a mut T
[INFO] [stdout]              ()
[INFO] [stdout]              (T,)
[INFO] [stdout]              (T0, T1)
[INFO] [stdout]              (T0, T1, T2)
[INFO] [stdout]              (T0, T1, T2, T3)
[INFO] [stdout]              (T0, T1, T2, T3, T4)
[INFO] [stdout]            and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]   --> tests/template.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]    |    ------------- required by a bound in this function
[INFO] [stdout] 40 | where T: Serialize + Debug
[INFO] [stdout]    |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Planet: serde::Serialize` is not satisfied
[INFO] [stdout]   --> tests/template.rs:93:50
[INFO] [stdout]    |
[INFO] [stdout] 93 |     assert_eq!(assert_render("hello {{{name}}}", &ctx), "hello world");
[INFO] [stdout]    |                -------------                     ^^^^ unsatisfied trait bound
[INFO] [stdout]    |                |
[INFO] [stdout]    |                required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Planet`
[INFO] [stdout]   --> tests/template.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Planet {
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout]    = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Planet` type
[INFO] [stdout]    = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]    = help: the following other types implement trait `Serialize`:
[INFO] [stdout]              &'a T
[INFO] [stdout]              &'a mut T
[INFO] [stdout]              ()
[INFO] [stdout]              (T,)
[INFO] [stdout]              (T0, T1)
[INFO] [stdout]              (T0, T1, T2)
[INFO] [stdout]              (T0, T1, T2, T3)
[INFO] [stdout]              (T0, T1, T2, T3, T4)
[INFO] [stdout]            and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]   --> tests/template.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]    |    ------------- required by a bound in this function
[INFO] [stdout] 40 | where T: Serialize + Debug
[INFO] [stdout]    |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Person: serde::Serialize` is not satisfied
[INFO] [stdout]    --> tests/template.rs:104:40
[INFO] [stdout]     |
[INFO] [stdout] 104 |     assert_eq!(assert_render(template, &ctx), "Dennis, ");
[INFO] [stdout]     |                -------------           ^^^^ unsatisfied trait bound
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Person`
[INFO] [stdout]    --> tests/template.rs:30:1
[INFO] [stdout]     |
[INFO] [stdout]  30 | struct Person {
[INFO] [stdout]     | ^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Person` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T,)
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]    --> tests/template.rs:40:10
[INFO] [stdout]     |
[INFO] [stdout]  39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]     |    ------------- required by a bound in this function
[INFO] [stdout]  40 | where T: Serialize + Debug
[INFO] [stdout]     |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Person: serde::Serialize` is not satisfied
[INFO] [stdout]    --> tests/template.rs:110:40
[INFO] [stdout]     |
[INFO] [stdout] 110 |     assert_eq!(assert_render(template, &ctx), "Dennis, 42");
[INFO] [stdout]     |                -------------           ^^^^ unsatisfied trait bound
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Person`
[INFO] [stdout]    --> tests/template.rs:30:1
[INFO] [stdout]     |
[INFO] [stdout]  30 | struct Person {
[INFO] [stdout]     | ^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Person` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T,)
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]    --> tests/template.rs:40:10
[INFO] [stdout]     |
[INFO] [stdout]  39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]     |    ------------- required by a bound in this function
[INFO] [stdout]  40 | where T: Serialize + Debug
[INFO] [stdout]     |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Person: serde::Serialize` is not satisfied
[INFO] [stdout]    --> tests/template.rs:121:40
[INFO] [stdout]     |
[INFO] [stdout] 121 |     assert_eq!(assert_render(template, &ctx), "Dennis, No age");
[INFO] [stdout]     |                -------------           ^^^^ unsatisfied trait bound
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Person`
[INFO] [stdout]    --> tests/template.rs:30:1
[INFO] [stdout]     |
[INFO] [stdout]  30 | struct Person {
[INFO] [stdout]     | ^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Person` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T,)
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]    --> tests/template.rs:40:10
[INFO] [stdout]     |
[INFO] [stdout]  39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]     |    ------------- required by a bound in this function
[INFO] [stdout]  40 | where T: Serialize + Debug
[INFO] [stdout]     |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Person: serde::Serialize` is not satisfied
[INFO] [stdout]    --> tests/template.rs:127:40
[INFO] [stdout]     |
[INFO] [stdout] 127 |     assert_eq!(assert_render(template, &ctx), "Dennis, 42");
[INFO] [stdout]     |                -------------           ^^^^ unsatisfied trait bound
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Person`
[INFO] [stdout]    --> tests/template.rs:30:1
[INFO] [stdout]     |
[INFO] [stdout]  30 | struct Person {
[INFO] [stdout]     | ^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Person` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T,)
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]    --> tests/template.rs:40:10
[INFO] [stdout]     |
[INFO] [stdout]  39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]     |    ------------- required by a bound in this function
[INFO] [stdout]  40 | where T: Serialize + Debug
[INFO] [stdout]     |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Nested: serde::Serialize` is not satisfied
[INFO] [stdout]    --> tests/template.rs:261:40
[INFO] [stdout]     |
[INFO] [stdout] 261 |     assert_eq!(assert_render(template, &ctx), "-+");
[INFO] [stdout]     |                -------------           ^^^^ unsatisfied trait bound
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Nested`
[INFO] [stdout]    --> tests/template.rs:255:5
[INFO] [stdout]     |
[INFO] [stdout] 255 |     struct Nested {
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Nested` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T,)
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]    --> tests/template.rs:40:10
[INFO] [stdout]     |
[INFO] [stdout]  39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]     |    ------------- required by a bound in this function
[INFO] [stdout]  40 | where T: Serialize + Debug
[INFO] [stdout]     |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Nested: serde::Serialize` is not satisfied
[INFO] [stdout]    --> tests/template.rs:264:40
[INFO] [stdout]     |
[INFO] [stdout] 264 |     assert_eq!(assert_render(template, &ctx), "-+");
[INFO] [stdout]     |                -------------           ^^^^ unsatisfied trait bound
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Nested`
[INFO] [stdout]    --> tests/template.rs:255:5
[INFO] [stdout]     |
[INFO] [stdout] 255 |     struct Nested {
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Nested` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T,)
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]    --> tests/template.rs:40:10
[INFO] [stdout]     |
[INFO] [stdout]  39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]     |    ------------- required by a bound in this function
[INFO] [stdout]  40 | where T: Serialize + Debug
[INFO] [stdout]     |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Nested: serde::Serialize` is not satisfied
[INFO] [stdout]    --> tests/template.rs:267:40
[INFO] [stdout]     |
[INFO] [stdout] 267 |     assert_eq!(assert_render(template, &ctx), "-42+");
[INFO] [stdout]     |                -------------           ^^^^ unsatisfied trait bound
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Nested`
[INFO] [stdout]    --> tests/template.rs:255:5
[INFO] [stdout]     |
[INFO] [stdout] 255 |     struct Nested {
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Nested` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T,)
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]    --> tests/template.rs:40:10
[INFO] [stdout]     |
[INFO] [stdout]  39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]     |    ------------- required by a bound in this function
[INFO] [stdout]  40 | where T: Serialize + Debug
[INFO] [stdout]     |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Planet: serde::Serialize` is not satisfied
[INFO] [stdout]    --> tests/template.rs:279:40
[INFO] [stdout]     |
[INFO] [stdout] 279 |     assert_eq!(assert_render(template, &ctx), "Jupiter - No additional info");
[INFO] [stdout]     |                -------------           ^^^^ unsatisfied trait bound
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Planet`
[INFO] [stdout]    --> tests/template.rs:17:1
[INFO] [stdout]     |
[INFO] [stdout]  17 | struct Planet {
[INFO] [stdout]     | ^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Planet` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T,)
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]    --> tests/template.rs:40:10
[INFO] [stdout]     |
[INFO] [stdout]  39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]     |    ------------- required by a bound in this function
[INFO] [stdout]  40 | where T: Serialize + Debug
[INFO] [stdout]     |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Planet: serde::Serialize` is not satisfied
[INFO] [stdout]    --> tests/template.rs:290:40
[INFO] [stdout]     |
[INFO] [stdout] 290 |     assert_eq!(assert_render(template, &ctx), "Earth - Birthplace of rust-lang; \
[INFO] [stdout]     |                -------------           ^^^^ unsatisfied trait bound
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Planet`
[INFO] [stdout]    --> tests/template.rs:17:1
[INFO] [stdout]     |
[INFO] [stdout]  17 | struct Planet {
[INFO] [stdout]     | ^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Planet` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T,)
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 129 others
[INFO] [stdout] note: required by a bound in `assert_render`
[INFO] [stdout]    --> tests/template.rs:40:10
[INFO] [stdout]     |
[INFO] [stdout]  39 | fn assert_render<T>(template: &str, data: &T) -> String
[INFO] [stdout]     |    ------------- required by a bound in this function
[INFO] [stdout]  40 | where T: Serialize + Debug
[INFO] [stdout]     |          ^^^^^^^^^ required by this bound in `assert_render`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `mustache` (test "template") due to 30 previous errors; 3 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "12b3940be8f15fe9165b5ec43bc72295e1c8e024b78f5abba5f928ed33109cf5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "12b3940be8f15fe9165b5ec43bc72295e1c8e024b78f5abba5f928ed33109cf5", kill_on_drop: false }`
[INFO] [stdout] 12b3940be8f15fe9165b5ec43bc72295e1c8e024b78f5abba5f928ed33109cf5
